package lookas.csvparser;

import java.lang.reflect.Field;

public class Headers{
    public static String[] getHeaders(Class<?> clazz) throws Exception{
        Field field = Headers.class.getField(clazz.getSimpleName());
        Object obj = field.get(null);
        return (String[])obj;
    }

    public static final String[] FundTransaction              = new String[]{
        "fundTransactionId", "transactionId", "accountId", "product",
        "processingSeq", "fund", "shareClass", "tranSign", "amount",
        "externalAmount", "shares", "loadPercentage", "load", "fee", "tax",
        "processDate", "priceDate", "status", "revFunTransactionId", "priceId"};

    public static final String[] Transaction                  = new String[]{
        "transactionId", "srcAccountId", "orderDate", "orderDistributorId",
        "processingDate", "priceDate", "dstAccountId", "transactionIdn",
        "transactionType", "transactionCategory", "negotiatedLoad",
        "reinvestmentFlag", "reinvestmentDate", "currency", "valueKind",
        "amount", "shares", "status", "customerIdn", "reversedTransactionId",
        "loadReductionAddPercent", "redeemingOrder"           };

    public static final String[] Account                      = new String[]{
        "accountId", "customerId", "productIdn", "allocationIdn",
        "acctInstance", "active", "loadReductionPercentage",
        "loadReductionReason", "orderDistributorId", "orderDate", "currency",
        "loadReductionAddPercent", "shareClass"               };

    public static final String[] Customer                     = new String[]{
        "customerId", "customerIdn", "customerTypeIdn", "identityConfirmed",
        "marketingAgreement", "active", "loadReductionPercentage",
        "loadReductionReason", "phonePinGenerationDate", "usingPhonePin",
        "internetPinGenerationDate", "usingInternetPin",
        "ivrPinGenerationDate", "usingIvrPin", "orderDistributorId",
        "orderDate", "loadReductionAddPercent", "shareClass"  };

    public static final String[] NavPrice                     = new String[]{
        "priceId", "fund", "shareClass", "priceDate", "price" };

    public static final String[] Sharelot                     = new String[]{
        "accountId", "shareLotId", "taxFundTransactionId", "shares", "escrow",
        "suspendedGain"                                       };

    public static final String[] TransactionBalance           = new String[]{
        "fundTransactionId", "accountId", "shareBalance", "fund", "shareClass"};

    public static final String[] TransactionSharelot          = new String[]{
        "fundTransactionId", "shareLotId", "shares", "loadPercentage", "load"};

    public static final String[] CurrencyExchangeRate         = new String[]{
        "currency", "priceDate", "exchangeRate", "rateId"     };

    public static final String[] TransactionPreferredSharelot = new String[]{
        "transactionId", "sharelotId", "sequence"             };
}
